package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 维护记录管理对象 maintenance_record
 * 
 * @author ruoyi
 * @date 2025-01-16
 */
public class MaintenanceRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 维护记录ID */
    private Long recordId;

    /** 设备ID */
    @Excel(name = "设备ID")
    private Long deviceId;

    /** 区域ID */
    @Excel(name = "区域ID")
    private Long areaId;

    /** 矿山ID */
    @Excel(name = "矿山ID")
    private Long mineId;

    /** 维护类型 */
    @Excel(name = "维护类型")
    private String maintenanceType;

    /** 维护时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "维护时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date maintenanceTime;

    /** 维护人员 */
    @Excel(name = "维护人员")
    private String maintainer;

    /** 负责人 */
    @Excel(name = "负责人")
    private String leader;

    /** 维护状态 */
    @Excel(name = "维护状态")
    private String status;

    /** 维护详情 */
    @Excel(name = "维护详情")
    private String details;

    /** 记录创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "记录创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    /** 记录更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "记录更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updatedAt;

    public void setRecordId(Long recordId) 
    {
        this.recordId = recordId;
    }

    public Long getRecordId() 
    {
        return recordId;
    }
    public void setDeviceId(Long deviceId) 
    {
        this.deviceId = deviceId;
    }

    public Long getDeviceId() 
    {
        return deviceId;
    }
    public void setAreaId(Long areaId) 
    {
        this.areaId = areaId;
    }

    public Long getAreaId() 
    {
        return areaId;
    }
    public void setMineId(Long mineId) 
    {
        this.mineId = mineId;
    }

    public Long getMineId() 
    {
        return mineId;
    }
    public void setMaintenanceType(String maintenanceType) 
    {
        this.maintenanceType = maintenanceType;
    }

    public String getMaintenanceType() 
    {
        return maintenanceType;
    }
    public void setMaintenanceTime(Date maintenanceTime) 
    {
        this.maintenanceTime = maintenanceTime;
    }

    public Date getMaintenanceTime() 
    {
        return maintenanceTime;
    }
    public void setMaintainer(String maintainer) 
    {
        this.maintainer = maintainer;
    }

    public String getMaintainer() 
    {
        return maintainer;
    }
    public void setLeader(String leader) 
    {
        this.leader = leader;
    }

    public String getLeader() 
    {
        return leader;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setDetails(String details) 
    {
        this.details = details;
    }

    public String getDetails() 
    {
        return details;
    }
    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }
    public void setUpdatedAt(Date updatedAt) 
    {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() 
    {
        return updatedAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("recordId", getRecordId())
            .append("deviceId", getDeviceId())
            .append("areaId", getAreaId())
            .append("mineId", getMineId())
            .append("maintenanceType", getMaintenanceType())
            .append("maintenanceTime", getMaintenanceTime())
            .append("maintainer", getMaintainer())
            .append("leader", getLeader())
            .append("status", getStatus())
            .append("details", getDetails())
            .append("createdAt", getCreatedAt())
            .append("updatedAt", getUpdatedAt())
            .toString();
    }
}
